/* components/record/record.wxss */
.record-handle {
  flex: 1;
  height: 72rpx;
  line-height: 72rpx;
  text-align: center;
  margin-right: 10rpx;
  margin-left: 10rpx;
  background: #fff;
  border-radius: 10rpx;
}

.record-panel {
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.5);
  position: fixed;
  z-index: 99999;
  left: 0;
  bottom: 0;
  color: #fff;
  visibility: hidden;
  opacity: 0;
  transition: .5s all;

  &.show {
    visibility: visible;
    opacity: 1;
  }

  .wave {
    width: 360rpx;
    background: #95ec69;
    position: absolute;
    bottom: 660rpx;
    border-radius: 30rpx;
    left: 50%;
    transform: translate(-50%);
    transition: all .3s;

    .run {
      width: 100%;
      height: 180rpx;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .word {
      height: 180rpx;
      text-align: left;
      padding: 30rpx;
      line-height: 40rpx;

      .done {
        color: #000;
      }
    }

    &::before {
      content: '';
      width: 25rpx;
      height: 25rpx;
      border-radius: 6rpx;
      position: absolute;
      transform: rotate(-45deg) translateX(-50%);
      left: 50%;
      bottom: -3rpx;
      background: inherit;
      z-index: 99999;
    }

    &.clean {
      background: #FA5151;
      left: 30px;
      transform: translate(0);
      width: 180rpx;
    }

    &.transform {
      width: 690rpx;

      &::before {
        left: calc(100% - 130rpx);
      }
    }

    span {
      display: inline-block;
      width: 6rpx;
      height: 30rpx;
      border-radius: 4rpx;
      background: #fff;
      margin: 0 10rpx;
    }

    &.on {
      opacity: 1;

      span {
        animation: load .8s ease infinite;
      }
    }

    span:nth-child(2) {
      animation-delay: 0.13s;
    }

    span:nth-child(3) {
      animation-delay: 0.26s;
    }

    span:nth-child(4) {
      animation-delay: 0.39s;
    }

    span:nth-child(5) {
      animation-delay: 0.52s;
    }
  }

  .action {
    width: 120rpx;
    height: 120rpx;
    background: rgba(0, 0, 0, 0.3);
    border-radius: 50%;
    position: absolute;
    bottom: 320rpx;
    transition: all cubic-bezier(0.075, 0.82, 0.165, 1) .4s;

    &.clean {
      left: 100rpx;

      &::before {
        content: '';
        width: 45rpx;
        height: 5rpx;
        background: #ccc;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%) rotate(-75deg);
      }

      &::after {
        content: '';
        width: 45rpx;
        height: 5rpx;
        background: #ccc;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%) rotate(20deg);
      }

      &.on {
        background: #fff;
        color: #000;
        transform: scale(1.2);

        &::before,
        &::after {
          background: #000;
        }
      }
    }


    &.transform {
      right: 100rpx;
      line-height: 120rpx;
      text-align: center;
      color: #8a8a8a;
      font-size: 40rpx;
      display: flex;
      justify-content: center;
      align-items: center;

      .before {
        transform: rotate(15deg);
      }

      .icon-Loading {
        color: #333;
        font-size: 40rpx !important;
        animation: rotate .9s linear infinite;
      }

      .icon-duihao {
        color: #07c160;
        font-size: 40rpx !important;
      }

      &.on {
        background: #fff;
        color: #000;
        transform: scale(1.3);

        .wen {
          transform: rotate(15deg);
        }
      }
    }
  }

  .btn {
    position: absolute;
    bottom: 320rpx;
    left: 130rpx;
    line-height: 45rpx;
    font-size: 30rpx;

    .iconfont {
      font-size: 40rpx !important;
    }

    &.cancel {
      left: 130rpx;
    }

    &.send-audio {
      left: 50%;
      transform: translateX(-50%);
    }
  }


  .range {
    width: 600px;
    height: 200px;
    border-radius: 50%;
    background: #f1f1f1;
    position: absolute;
    bottom: -70px;
    left: 50%;
    transform: translateX(-50%);
    transition: all .3s;
    box-shadow: 0 0 80rpx 1rpx rgba(0, 0, 0, 0.2) inset;
    border-top: 8rpx solid #fff;

    &.on {
      background: rgba(0, 0, 0, 0.2);
      bottom: -75px;
      border-top: none;
      box-shadow: none;
    }
  }

  .micro {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 95rpx;
    color: rgba(255, 255, 255, 0.4);
    font-size: 50rpx !important;

    &.on {
      color: rgba(0, 0, 0, 0.6);
    }
  }

  .tips {
    position: absolute;
    bottom: 450rpx;
    font-size: 26rpx;
    color: #ccc;
  }

  .clean-tips {
    left: 105rpx;
  }

  .transform-tips {
    right: 123rpx;
  }

  .send-tips {
    bottom: 130px;
    left: 50%;
    transform: translateX(-50%);
  }
}

@keyframes load {

  0%,
  100% {
    height: 30rpx;
  }

  50% {
    height: 40rpx;
  }
}

.loading span:nth-child(2) {
  animation-delay: 0.13s;
}

.loading span:nth-child(3) {
  animation-delay: 0.26s;
}

.loading span:nth-child(4) {
  animation-delay: 0.39s;
}

.loading span:nth-child(5) {
  animation-delay: 0.52s;
}

@keyframes opacityAni {

  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

.dot {
  font-size: 40rpx;
  margin: 0 5rpx;
  color: #bfbfbf;
}

.dot:nth-child(2) {
  animation: opacityAni 1s ease infinite .2s;
}

.dot:nth-child(3) {
  animation: opacityAni 1s ease infinite .4s;
}

@keyframes rotate {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}